package com.tepth.busfix.main.alarm;

import com.tepth.busfix.base.BaseModel;
import com.tepth.busfix.base.BasePresenter;
import com.tepth.busfix.base.BaseView;
import com.tepth.busfix.bean.reponse.AlarmType;
import com.tepth.busfix.network.ApiModel;

import java.util.List;

import io.reactivex.Observable;

/**
 * Created by zhangyu on 2017/3/21.
 */

public class AlarmInfoContract {

    interface View extends BaseView {
        String getAuthKey();
        String getVehicleId();
        long getTroubleTypeId();

        void showAlarmTypes(List<AlarmType> list);
    }

    interface Model extends BaseModel {
        Observable<ApiModel<List<AlarmType>>> getAlarmInfo(String authKey, String vehicleId);
        Observable<ApiModel<List<AlarmType>>> getAlarmInfoById(String authKey, String vehicleId,long id);
    }

    abstract static class Presenter extends BasePresenter<Model, View> {

        @Override
        public void onStart() {

        }

        abstract void getAlarmInfo();
        abstract void getAlarmInfoByTroubleTypeId();
    }
}